package com.atguigu.webflux.entity;

import org.springframework.data.annotation.Id;
import org.springframework.data.relational.core.mapping.Table;

import java.time.Instant;
import java.util.List;
import java.util.Optional;

@Table("t_payment")
public class PaymentDO extends BaseModel {
    private Long userId;
    private String firstName;
    private String lastName;
    private String address1;
    private String address2;
    private String pass1;
    private String creditCard;
    private String expDate;
    private String oldCCOption;
    private String seatPref;
    private String seatType;
    private String outboundFlight;
    private String returnFlight;
    private int advanceDiscount;
    private int numPassengers;

    public PaymentDO() {
        super();
    }

    public PaymentDO(Long userId, String firstName, String lastName, String address1, String address2, String pass1, String creditCard, String expDate, String oldCCOption, String seatPref, String seatType, String outboundFlight, String returnFlight, int advanceDiscount, int numPassengers) {
        this.userId = userId;
        this.firstName = firstName;
        this.lastName = lastName;
        this.address1 = address1;
        this.address2 = address2;
        this.pass1 = pass1;
        this.creditCard = creditCard;
        this.expDate = expDate;
        this.oldCCOption = oldCCOption;
        this.seatPref = seatPref;
        this.seatType = seatType;
        this.outboundFlight = outboundFlight;
        this.returnFlight = returnFlight;
        this.advanceDiscount = advanceDiscount;
        this.numPassengers = numPassengers;
    }

    public PaymentDO(Long id, Instant createdAt, Instant updatedAt, Long userId, String firstName, String lastName, String address1, String address2, String pass1, String creditCard, String expDate, String oldCCOption, String seatPref, String seatType, String outboundFlight, String returnFlight, int advanceDiscount, int numPassengers) {
        super(id, createdAt, updatedAt);
        this.userId = userId;
        this.firstName = firstName;
        this.lastName = lastName;
        this.address1 = address1;
        this.address2 = address2;
        this.pass1 = pass1;
        this.creditCard = creditCard;
        this.expDate = expDate;
        this.oldCCOption = oldCCOption;
        this.seatPref = seatPref;
        this.seatType = seatType;
        this.outboundFlight = outboundFlight;
        this.returnFlight = returnFlight;
        this.advanceDiscount = advanceDiscount;
        this.numPassengers = numPassengers;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public String getFirstName() {
        return firstName;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    public String getAddress1() {
        return address1;
    }

    public void setAddress1(String address1) {
        this.address1 = address1;
    }

    public String getAddress2() {
        return address2;
    }

    public void setAddress2(String address2) {
        this.address2 = address2;
    }

    public String getPass1() {
        return pass1;
    }

    public void setPass1(String pass1) {
        this.pass1 = pass1;
    }

    public String getCreditCard() {
        return creditCard;
    }

    public void setCreditCard(String creditCard) {
        this.creditCard = creditCard;
    }

    public String getExpDate() {
        return expDate;
    }

    public void setExpDate(String expDate) {
        this.expDate = expDate;
    }

    public String getOldCCOption() {
        return oldCCOption;
    }

    public void setOldCCOption(String oldCCOption) {
        this.oldCCOption = oldCCOption;
    }

    public String getSeatPref() {
        return seatPref;
    }

    public void setSeatPref(String seatPref) {
        this.seatPref = seatPref;
    }

    public String getSeatType() {
        return seatType;
    }

    public void setSeatType(String seatType) {
        this.seatType = seatType;
    }

    public String getOutboundFlight() {
        return outboundFlight;
    }

    public void setOutboundFlight(String outboundFlight) {
        this.outboundFlight = outboundFlight;
    }

    public String getReturnFlight() {
        return returnFlight;
    }

    public void setReturnFlight(String returnFlight) {
        this.returnFlight = returnFlight;
    }

    public int getAdvanceDiscount() {
        return advanceDiscount;
    }

    public void setAdvanceDiscount(int advanceDiscount) {
        this.advanceDiscount = advanceDiscount;
    }

    public int getNumPassengers() {
        return numPassengers;
    }

    public void setNumPassengers(int numPassengers) {
        this.numPassengers = numPassengers;
    }
}
